iT邦幫忙

2023 iThome 鐵人賽

DAY 12
0
自我挑戰組

來場計概入門課吧X資訊人該了解的通識素養系列 第 12

Day 12 | 進位表示法的轉換(下) -【十六進位】和【二進位】的互換

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20230926/20149362uVPx7t1VNE.png

接續昨天的「十進位」和「二進位」的轉換,今天這篇會以例子的方式來探討「十六進位」和「二進位」的互換。如果你對進位法還不是很了解,可以參考之前的文章電腦的魔法語言 - 探索二進制世界的奧秘

「二進位」轉「十六進位」

在正式進入進位法的轉之前,先來了解十六進位是什麼
十六進位是指以基數 16 的運算系統,由 0 ~ 9 和大寫字母A ~ F組成。十六進位的值會對應十進位的 0 ~ 15(共 16 個數字),例如 A = 10, F = 15,可以直接看下圖:
https://ithelp.ithome.com.tw/upload/images/20230926/20149362EfEgRJIcZN.png

因為 16 為 2 的整數次方,所以二進位數和十六進位數可說是戲出同門啦~ 他們之間的轉換也比較簡單

PS 補充:「十進位」轉「十六進位」可以想成 不斷地 ÷ 16,跟「十進位」轉「二進位」一樣,只是基數從 2 轉為 16而已

可以拆為「整數部分」和「小數部分」來執行
STEP1: 將「整數部分」分組,從小數點往''每 4 個位元一組,並換成16進位
STEP2: 將「小數部分」分組,從小數點往''每 4 個位元一組,並換成16進位
STEP3: 將上述兩步驟結果合併

範例一: 110110101.11011 轉換為「十六進位」
https://ithelp.ithome.com.tw/upload/images/20230926/201493627JCvyYzJqA.png
STEP1: 將「整數部分」從小數點往左開始分組,得到 1_1011_0101,換為十六進位為 1B5 (為了易讀,每四位用底線隔開)
STEP2: 將「小數部分」從洗數點往右開始分組,得到 1101_1,換為十六進位為 D8
STEP3: 最後的結果為 1B5.D8

「十六進位」轉「二進位」

範例一: 把剛剛上面的 1B5.D8 轉換為「二進位」,
一樣可以拆為「整數部分」和「小數部分」來執行
STEP1: 整數部分為 1B5.D8 ,先把 B, D 轉成「十進位」,B = 11; D = 13
STEP2: STEP1換成十進位後,就可以再繼續將「十進位」換成「二進位」,整數和小數一樣分開算

把上面的步驟變成下面這張圖,有些轉換的計算因怕版面過於雜亂,所以就沒加上了
圖畫得沒有很好請見諒!!
https://ithelp.ithome.com.tw/upload/images/20230926/20149362lAEul095DD.jpg

這題答案就是 1_1011_0101.1101_1 5 (為了易讀,每四位用底線隔開)

PS 轉換器:https://tools.yeecord.com/calculator/dec/bin

總結

各種進位法之間所要表達的總數都是一樣的,只是表示方式不一樣,就像下圖中的 12 顆蘋果
https://ithelp.ithome.com.tw/upload/images/20230926/20149362J9ANtnV6KM.png
如果換成各進位法如下:

十進位: 12
二進位: 1100
十六進位: C

透過例子學習是比較快的方式,希望今天的內容能對你有所幫助,部分圖片因版面關係,所以省略掉了一些計算,有問題也可以在下方討論/images/emoticon/emoticon42.gif

參考資料

  1. wikipedia
  2. 全華 - 計算機概論 資訊素養大補帖

上一篇
Day 11 | 進位表示法的轉換(上) -【十進位】和【二進位】的互換
下一篇
Day 13 | 文字的數字化冒險 - ASCII , Unicode, Big-5
系列文
來場計概入門課吧X資訊人該了解的通識素養31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言